📚 Node [[outils pour gérer ses projets]]
↳ 📓 Resource [[@communecter/outils pour gérer ses projets]]
📓 garden/communecter/archives/Outils-pour-gérer-ses-projets.md by @communecter

Voici le lien du google doc pour pouvoir contribuer plus facilement Ă  ce document : https://docs.google.com/document/d/1OtnSuMg4xxzadAW_gJ162ahB5UpBfSWAumksUrwjzlg/edit?usp=sharing

Le but principal de ce document est d’avoir une rĂ©flexion collective sur cette nouvelle fonctionnalitĂ©.

Intro

But du document

Je voulais mettre par Ă©crit ma vision d’une telle fonctionnalitĂ© au sein de communecter. Je pense que ma vision n’est pas la mĂŞme que la votre, mais je vais tout de mĂŞme l’exposer ici. Je vais essayer d’ĂŞtre le plus prĂ©cis possible. Je vais dĂ©crire ici ce qui pour moi serait le top du top pour engager une discussion avec vous et partir ensuite sur des bases solides pour l’implĂ©mentation de cette fonctionnalitĂ©.

Ce document sert avant tout Ă  lister ce qu’on aimerait dans le meilleur des cas. Ce n’est pas le document pour dire comment on va le faire, mais qu’est-ce qu’on veut.

Syntaxe du document

J’ai utilisĂ© une syntaxe assez simple pour s’y retrouver avec les termes dans communecter :

  • Une ENTITE dans communecter est soit : une ORGANISATION, un PROJET, un CITOYEN, ou un LIEU.
  • Quand un mot est en majuscule, c’est que c’est qu’on parle d’un Ă©lĂ©ment de communecter. Par exemple : un projet est un amas d’actions qui rĂ©pondent Ă  des objectifs. Un PROJET, c’est notre PROJET, celui de communecter, c’est le type PROJET.

Prenons notre temps

La fonctionnalité étant totalement indépendante de communecter, nous pouvons vraiment prendre notre temps et faire quelque chose de génial qui défiera toutes les lois de l’internet et qui deviendra bien entendu une référence dans la gestion de projets de n’importe quelle entité.

Valeurs

Pour un internet décentralisé et indépendant

Ce qui est bien les outils libres c’est qu’ils peuvent hĂ©bergĂ© par n’importe qui. Mais ça c’est dans la thĂ©orie, parce que dans la pratique, c’est plus compliquĂ© que ça.

Il faut avoir les compétences

Tout le monde ne peut pas hĂ©berger des outils libres parce qu’il faut se former Ă  ça, ça prend du temps et c’est pas forcĂ©ment accessible Ă  tout le monde de prime abord.

Notre projet est alors isolé

Un des gros freins est le fait de se couper des autres. Quand on héberge des outils libres, ces outils libres ne sont pas connectés avec le reste du monde.

Pour illustrer ça je vais prendre l’exemple de loomio :

  • Sur loomio il y a une fonction de recherche des groupes publiques. Cette fonction permet de trouver des projets intĂ©ressants dans lesquels on va potentiellement pouvoir contribuer.
  • La personne qui a son instance de loomio sur son serveur ne sera pas connectĂ© avec le serveur principal de loomio, donc invisible pour les personnes recherchant un groupe dans loomio.

A MOINS QUE

On puisse connecter le serveur de la personne avec un autre serveur qui serait lĂ  avant tout pour centraliser l’information.

Ce qui nous permet d’avoir plusieurs serveurs qui communiquent entre eux, sans avoir un serveur maĂ®tre.

Voici une image qui illustre bien mes propos

POURQUOI ?

Cela permet plusieurs choses.

Pour la personne qui s’auto-hĂ©berge

Elle ne dĂ©pend pas d’une tierce organisation, elle est donc indĂ©pendante. Le rapport de domination entre l’organisation qui a dĂ©veloppĂ© l’outil et la personne n’existe pas. En plus de cela elle est libre de pouvoir filtrer les donnĂ©es qu’elle souhaite, utiliser les protocoles qu’elle a envie, etc… Libre et indĂ©pendante, c’est tout de mĂŞme sympa :D

Pour les sites avec un gros besoin d’hĂ©bergement (type communecter)

Si de plus en plus de personnes s’auto-hĂ©bergent ou si de plus en plus d’hĂ©bergeurs indĂ©pendants Ă©mergent (du type CHATONS ), alors ça fait moins de charge pour les sites avec un gros besoin d’hĂ©bergement qui n’ont alors plus besoin de gĂ©rer trop de serveur et peuvent se focaliser sur le dĂ©veloppement de leur logiciel.

De plus une communautĂ© très active dĂ©fend ardemment ces nouvelles formes d’hĂ©bergements, si communecter rentre dans cette communautĂ©, cela veut dire potentiellement :

  • Plus de contributeurs
  • Plus de communication autour du site
  • Une plus grande communautĂ©

En donnant la possibilitĂ© Ă  sa communautĂ© de s’auto-hĂ©berger, un site comme communecter pourrait faire des Ă©conomies, mais aussi renforcer les liens de toutes les personnes qui gravitent autour de la ressource.

Les liens entre les entités renforcent les projets de tou-te-s

Des liens se crĂ©ent au fur et Ă  mesure que les projets avancent, Ă©voluent, mutent, fusionnent, etc… De cette mise en lien nĂ© plus de possibilitĂ©, plus d’idĂ©es et d’actions pour constamment amĂ©liorer les ressources d’un projet. Si mettre en lien les gens est si puissant, il faut crĂ©er des mĂ©thodes et des outils pour permettre cela.

Écosystème des outils open source

CrĂ©er un Ă©cosystème rĂ©silients des outils open source avec une bonne interopĂ©rabilitĂ© entre eux, avec la possibilitĂ© de modifier le contenu d’une application avec une autre, permettra de rĂ©ellement concurrencer les gros pontes du marchĂ©. Cela permettra alors de sensibiliser plus de gens Ă  ce type de pratique et donc augmenter la communautĂ© des commoners numĂ©riques. #cerclevertueux

Écosystème des créateurs de lien

CrĂ©er un Ă©cosystème rĂ©silients des crĂ©ateurs de lien, avec de la documentation en commun, savoir qui fait quoi, oĂą, comment, qui a besoin de quoi, etc… Permettrait d’ĂŞtre plus performant dans notre manière d’aborder le travail collaboratif et notre manière d’apprĂ©hender notre sociĂ©tĂ©. C’est un moteur considĂ©rable pour l’Ă©volution de notre système vers un autre, plus collaboratif.

Communecter dans tout ça ?

Le but est que communecter s’intègre parfaitement dans les valeurs citĂ©es plus haut et qu’elle devienne la plateforme de rĂ©fĂ©rence pour tous les projets ouverts de notre siècle !

Cahier des charges de la nouvelle fonctionnalité

Les applis ça sert à qui ? Qui peut en créer ?

Toutes les ENTITÉS de communecter, aussi bien une ORGANISATION, qu’un CITOYEN, qu’un PROJET, qu’un LIEU peuvent crĂ©er des applis.

Des applis connectées entre elles

Toutes les applis sont connectées entre elles.

C’est Ă  dire que si par exemple une ORGANISATION crĂ©e une action dans un des ses PROJET dans l’application wekan et qu’elle prĂ©cise que ce PROJET se passe dans un LIEU gĂ©rĂ©e par des CITOYENS. Alors on pourra accĂ©der Ă  l’action de par le wekan de toutes les ENTITÉS citĂ©es.

Cela veut aussi dire qu’on peut ajouter/enlever du contenu dans une appli alors qu’on est dans une autre (comme par exemple le lien entre trello et slack).

Ce type de feature doit être déterminé en fonction de nos besoins et listés pour faire des demandes aux développeurs de chaque appli

Comment accéder à une appli, comment naviguer entre elles ?

Une gestion des applis Ă  la Google

L’une des choses qu’on peut reprocher Ă  sandstorm c’est d’avoir une barre sur la gauche qui met constamment les outils qu’on utilise. Alors c’est pratique quand tu veux facilement changer d’outils, mais par contre ça t’obstrue toute une partie de l’Ă©cran. Et si tu travailles sur un PC portable, ce n’est pas gĂ©rable.

Google utilise une barre horizontale pour naviguer entre ces applis et gérer des options pour spécifique à chaque appli. Dans certaines applis (par exemple Google doc), nous n’avons pas accès aux autres applis.

Copions les ! Créons une icone “appli” en haut à droite qui liste toutes les applis auxquelles on a accès.

Remarquons que chaque appli (rocketchat, loomio, wekan, mediawiki) a dĂ©jĂ  une barre horizontale qui reste. quand on scroll. Il suffira alors d’ajouter l’icĂ´ne applis.

Si on veut vite passer d’une appli Ă  une autre, alors il suffit que de les laisser dans ses onglets actifs.

Lien de l’appli aussi au sein de l’ENTITE dans communecter

Je pourrais aussi accĂ©der Ă  une appli dans une ENTITÉ quelconque, que ce soit un PROJET, une ORGANISATION, un LIEU, ou un CITOYEN. Elle sera prĂ©sente dans la partie "application" de la page de prĂ©sentation de l’ENTITE.

Lien de toutes les applis auxquelles le CITOYEN est attaché

On pourra aussi accĂ©der Ă  l’appli souhaitĂ©e en allant sur la page "toutes mes applis" dans communecter. Cette page centralise toutes les applis auxquelles le CITOYEN contribue, elles peuvent ĂŞtre classĂ©es de diffĂ©rentes manière :

  • par ENTITÉ : On verrait les applis disponibles pour chaque ENTITES pour lesquelles je contribue.
  • par applis : On verrait les ENTITES disponible en fonction de chaque appli.

Mais ce n’est pas tout, on peut passer d’un projet Ă  l’autre dans l’appli elle-mĂŞme.

Dans chaque appli on a accès à toutes nos ENTITÉS

Quand on est dans une application, on peut facilement passer d’une ENTITÉ Ă  une autre. Par exemple, je suis dans le wekan d’un PROJET quelconque, je peux facilement naviguer dans le wekan pour voir les autres PROJETS auxquels je contribue.

Comment créer une appli au sein de communecter ?

A la création de votre ENTITÉ

Quand vous créez une ENTITÉ, vous pouvez cocher les applis que vous utiliserez pour la gérer.

A n’importe quel moment

En modifiant votre ENTITÉ, vous pouvez facilement cocher de nouvelles applis.

Vous pouvez aussi crĂ©er de nouveaux tableaux dans wekan, channel dans rocketchat, etc…

Comment ça se passe ?

Quand vous crĂ©ez une appli, toutes les personnes faisant partie de l’ENTITE dans laquelle vous l’avez créée, vont recevoir dans leurs notifications la possibilitĂ© d’ĂŞtre ajoutĂ©es Ă  cette nouvelle appli. On demande aux personnes rejoignant l’ENTITE en cours de route si elles veulent ĂŞtre ajoutĂ©es aux applis de cette ENTITÉ.

Quelles sont les particularités pour chaque appli

Wekan

De base dans wekan on a un tableau personnel nommé "Perso". Ce dernier regroupe toutes les actions auxquelles on contribue.

Quand on ouvre une nouvelle instance de wekan, cela crĂ©e un nouveau tableau dans l’application.

Soit cette instance vient d’une ENTITE parente (ORGANISATION ou LIEU par exemple). Dans ce cas cela va ouvrir un tableau dont le nom sera le mĂŞme que le nom de l’ENTITE.

Soit cette instance vient d’une ENTITE enfant (PROJET par exemple). Dans ce cas on va crĂ©er un nouveau dossier dans le wekan du nom de l’ENTITE parente avec dans ce dossier deux tableaux : "General" qui est le tableau qui regroupe toutes les actions de tous les tableaux du dossier, et "NomDeLEntiteEnfant" qui est le tableau de l’ENTITE enfant. Quand on ajoute une action dans le tableau de l’ENTITE enfant, l’action est aussi visible dans le tableau gĂ©nĂ©ral.

Quels liens entre les différentes applis ?

Le plus important est d’avoir de rĂ©els liens entre les diffĂ©rentes applis et de pouvoir interagir facilement les unes avec les autres. Par exemple on pourrait ajouter une action dans un wekan en mettant +add nomdelaction dans le rocket chat. Comme ça tout le monde est au courant de l’ajout qui a Ă©tĂ© fait et on pourrait faire en sorte que tout le monde puisse aussi s’ajouter Ă  cette action en cliquant sur le plus qui est mis sur le message.

Lister ici tous les liens qu’on aimerait avoir entre les applis

  • 1
  • 2

Exemple concret

CrĂ©ation d’une ORGANISATION

Je suis nouveau sur la plateforme et je fais partie de l’association Livin’Coop, organisation qui a pour but de crĂ©er du lien entre les diffĂ©rents acteur/ices de la mĂ©tropole. J’ajoute donc les infos nĂ©cessaires pour crĂ©er mon ORGANISATION, Ă  cela j’ajoute que j’aimerais utiliser 4 outils : le wekan, le loomio, le wiki et le rocketchat. J’ai maintenant une ORGANISATION et des outils Ă  disposition pour bien gĂ©rer cette organisation.

Ajout d’un PROJET

Nouvelle décision dans le loomio pour décider de la pertinence du projet

J’aimerais maintenant ajouter un PROJET : "FĂŞte des commoners", le but du projet est de faire un Ă©vĂ©nement qui va rassembler tous les commoners et potentiels commoners de la mĂ©tropole lilloise pour qu’ils Ă©changent sur leurs pratiques et qu’ils contribuent ensemble Ă  l’amĂ©lioration de l’Ă©cosystème des communs. Ça sera aussi l’occasion de communecter tout le monde et de faire des ateliers sur des sujets divers.

Chez Livin’Coop, pour ajouter un PROJET, il faut que tous les CITOYENS concernĂ©es par ce PROJET soit consultĂ©s. Je dois alors crĂ©er une "nouvelle dĂ©cision" dans le loomio de l’ORGANISATION. Pour ce faire, je dois accĂ©der au groupe Loomio de Livin’Coop pour crĂ©er ma "nouvelle dĂ©cision", voilĂ  comment je peux m’y prendre :

  • Je peux cliquer sur l’icĂ´ne en haut Ă  droite des applis, et je choisis loomio. Dans loomio je choisis le groupe "Livin’Coop".
  • Je peux aller dans l’ORGANISATION Livin’coop, puis cliquer sur "loomio" dans la partie application de l’ORGANISATION.
  • Je vais sur ma page "Toutes mes applis" dans communecter et sĂ©lectionne loomio dans l’ORGANISATION "Livin’Coop".

Ajout du PROJET

Tout le monde est d’accord et s’enjaille de cette idĂ©e ! Pour crĂ©er le PROJET, je vais dans l’ORGANISATION "Livin’Coop" et je fais "Ajouter un nouveau projet". Je mets les informations nĂ©cessaires et oh magie, les prĂ©cĂ©dentes applis sont dĂ©jĂ  cochĂ©es. Je veux bien utiliser les mĂŞmes applications pour ce projet. Elles sont donc automatiquement créées de la manière suivante :

  • Wekan : un nouveau tableau est créé, il est le fils du tableau de Livin’Coop, c’est Ă  dire que quand une action est mise dans le tableau de la "FĂŞte des commoners", l’action est aussi mise dans le tableau de Livin’Coop, il est Ă©tiquetĂ© comme "FĂŞte des commoners". Aussi, maintenant quand je vais dans wekan dans "Livin’Coop", deux tableaux s’offrent Ă  moi : "GĂ©nĂ©ral" et "FĂŞte des commoners". "GĂ©nĂ©ral Ă©tant le tableau gĂ©nĂ©ral de l’ORGANISATION Livin’Coop.
  • Loomio : Un sous groupe est créé.
  • Wiki : Une sous-section est créé, c’est Ă  dire aura une URL comme suis : https://wiki.communecter.org/wiki/Livin’Coop/Projet/Fete_des_commoners avec les informations basiques donnĂ©es par le crĂ©ateur du PROJET.
  • RocketChat : Un sous canal est créé portant un nom du type : livincoop_fete.des.commoners_lille.

Ajout d’une action dans un PROJET

Je veux ajouter une action dans le tableau wekan de mon PROJET "FĂŞte des commoners". Cette action consiste Ă  faire une liste de tous les commoners de la mĂ©tropole pour leur parler du projet. Cette action ne concernant directement personne de l’ORGANISATION, je peux directement crĂ©er mon action. Je prĂ©fère tout de mĂŞme laisser un message sur le chat, sur le channel #livincoop_fete.des.commoners pour informer tout le monde ce que je m’apprĂŞte Ă  faire. Ceci Ă©tant fait, je dois donc accĂ©der Ă  mon tableau. A moi s’offre un large panel de choix :

  • Je peux cliquer sur l’icĂ´ne en haut Ă  droite des applis, et je choisis wekan. Dans wekan je choisis "FĂŞte des commoners".
  • Je peux aller dans l’ORGANISATION Livin’coop, puis
    • cliquer sur "wekan dans la partie application de l’ORGANISATION puis je peux choisir le tableau "FĂŞte des commoners".
    • dans le PROJET "FĂŞte des commoners" et cliquer sur "wekan" dans la partie "application".
  • Je vais sur ma page "Toutes mes applis" dans communecter et sĂ©lectionne wekan dans le PROJET "FĂŞte des commoners".

En gros tout est interconnectĂ© donc il est très facile d’accĂ©der Ă  ce que l’on veut. La plupart du temps on utilisera le bouton appli et on choisira l’application que l’on veut. Et on naviguera dans les diffĂ©rentes applis en les laissant dans nos onglets actifs.

Comment mettre en place une telle fonctionnalité

Tel google : nomappli.communecter.org

Chaque appli sera disponible sĂ©parĂ©ment, par exemple il suffira de marquer l’url d’un channel de chat pour pouvoir y accĂ©der.

Login

Un login commun pour toutes les applis sera requis. On pourra se connecter depuis n’importe quelle appli. Le mieux Ă©tant de faire comme facebook/google : se connecter automatiquement.

CrĂ©ation d’une ou plusieurs applis

Quand on crĂ©e une ou plusieurs appli dans communecter, le serveur va automatiquement crĂ©er le groupe si c’est un loomio, le channel si c’est un rocketchat, le tableau si c’est un wekan, l’article si c’est un wiki, etc… Pour ce faire il va utiliser l’API de chacune de ces applications.

Les applis peuvent très bien marcher toute seule.

On peut par exemple utiliser communecter que pour son wekan.

Liens entre les différentes applis

Toutes les applis marcheront en synergie les unes avec les autres via leur API. Elle s’Ă©changeront constamment des donnĂ©es et se mettront Ă  jour automatiquement en fonction des informations qu’elles Ă©changeront.

Voir Ă  long terme

Nous pouvons aussi voir à long terme et voir vers où on veut aller avec cette nouvelle fonctionnalité.

Permettre aux auto-hĂ©bergeurs d’hĂ©berger leur propre communecter

N’importe qui pourrait tĂ©lĂ©charger communecter et les applis qui lui sont associĂ©es pour les installer sur son propre serveur. Son serveur s’il est sur internet pourra interagir avec les autres serveurs communecter (dont le notre) pour Ă©changer toutes les datas nĂ©cessaires. Il aura les mĂŞmes fonctionnalitĂ©s qu’un utilisateur lambda, sauf qu’il l’hĂ©bergera sur un autre serveur.

On pourrait aussi par exemple travailler en local sans avoir besoin d’internet, puis ensuite push ses datas sur un serveur liĂ© Ă  internet.

Regrouper toutes les données de tous les serveurs qui font tourner les applis

Le problème aujourd’hui c’est qu’on ne peut pas avoir une information sur "qu’est ce qui se passe dans ce monde et oĂą est ce que je peux contribuer ?". Et je ne pense pas (enfin je n’espère pas) que le but de communecter c’est de rassembler tout le monde derrière une seule plateforme (la notre + nos serveurs Ă  nous).

On peut effectuer un travail Ă  long terme d’intĂ©gration d’autres serveurs dans la plateforme communecter.

Par exemple, on peut aller voir un serveur wekan et leur dire : "Eh ! C’est sympa ce que vous faites, ce qu’on peut faire pour vous c’est recenser tous vos tableau dans notre plateforme et on peut vous donner la possibilitĂ© d’ajouter des outils Ă  la votre". Ce qui fait qu’ils pourraient sĂ©lectionner les outils dont leur communautĂ© aurait besoin (et donc sĂ»rement communecter parce que c’est de la boulette) et comme ça on Ă©largit notre cercle, sans utiliser aucune ressource et en laissant une communautĂ© lĂ  oĂą elle est. C’est ça aussi la puissance de la dĂ©centralisation et de la crĂ©ation de lien, agrandir sa communautĂ© sans abĂ®mer celle des autres ;) .

On pourrait mĂŞme imaginer des serveurs diffĂ©rents pour chaque appli qui Ă©changeraient entre elles les infos nĂ©cessaires. Le but c’est de trouver la meilleure manière de coder ça pour rendre le tout plus souple. Dans l’idĂ©e je pourrais très bien ĂŞtre sur les serveurs de loomio pour mon appli loomio, les serveur indie.io pour mon wekan, mon serveur perso pour le wiki et le serveur d’un hĂ©bergeur indĂ© pour communecter, et que tout marche ensemble via les APIs !

Bref, j’espère très sincèrement qu’on se dirige par lĂ , parce que je ne veux pas imposer communecter Ă  tou-te-s, je veux juste leur dire, si tu veux c’est disponible et en plus ça marche avec ce que tu fais dĂ©jĂ  !

Questions

Pourquoi utiliser l’API des applications plutĂ´t que les intĂ©grer entièrement Ă  communecter ?

En faisant cela, cela offre une plus grande libertĂ© Ă  l’Ă©cosystème des applis open source. Cela permet

  • de communiquer entre applis mĂŞme si on fait pas partie du mĂŞme serveur ce qui permettra par exemple Ă  plus long terme d’avoir des serveurs dĂ©centralisĂ©s qui communique entre eux.
  • que les applis restent indĂ©pendantes et peuvent continuer Ă  ĂŞtre amĂ©liorĂ©es par leur communautĂ©
  • facilement d’ajouter et de retirer des applications Ă  communecter
  • d’utiliser des applis mĂŞme si ce n’est pas du php
  • crĂ©er des liens avec l’Ă©cosystème des libristes en amĂ©liorant leurs applis
  • pleins d’autres choses auxquelles on ne pense pas maintenant

Et si l’API d’une appli n’est pas assez fournie

Rentrer en contact avec les développeurs et leur faire les yeux doux

Soit ils nous aident et on est content, soit ils ne peuvent pas, ce qui nous amène à :

Se dépatouiller nous même

A ce moment lĂ , on aura plus qu’Ă  forker leur projet et push de nouvelles fonctionnalitĂ©s. Comme ça on amĂ©liore notre projet tout en amĂ©liorant celui des autres. Et on crĂ©e cette Ă©cosystème dont on parlait dans les valeurs.

📓 garden/communecter/en/archives/Outils-pour-gérer-ses-projets.md by @communecter

Voici le lien du google doc pour pouvoir contribuer plus facilement Ă  ce document : https://docs.google.com/document/d/1OtnSuMg4xxzadAW_gJ162ahB5UpBfSWAumksUrwjzlg/edit?usp=sharing

Le but principal de ce document est d’avoir une rĂ©flexion collective sur cette nouvelle fonctionnalitĂ©.

Intro

But du document

Je voulais mettre par Ă©crit ma vision d’une telle fonctionnalitĂ© au sein de communecter. Je pense que ma vision n’est pas la mĂŞme que la votre, mais je vais tout de mĂŞme l’exposer ici. Je vais essayer d’ĂŞtre le plus prĂ©cis possible. Je vais dĂ©crire ici ce qui pour moi serait le top du top pour engager une discussion avec vous et partir ensuite sur des bases solides pour l’implĂ©mentation de cette fonctionnalitĂ©.

Ce document sert avant tout Ă  lister ce qu’on aimerait dans le meilleur des cas. Ce n’est pas le document pour dire comment on va le faire, mais qu’est-ce qu’on veut.

Syntaxe du document

J’ai utilisĂ© une syntaxe assez simple pour s’y retrouver avec les termes dans communecter :

  • Une ENTITE dans communecter est soit : une ORGANISATION, un PROJET, un CITOYEN, ou un LIEU.
  • Quand un mot est en majuscule, c’est que c’est qu’on parle d’un Ă©lĂ©ment de communecter. Par exemple : un projet est un amas d’actions qui rĂ©pondent Ă  des objectifs. Un PROJET, c’est notre PROJET, celui de communecter, c’est le type PROJET.

Prenons notre temps

La fonctionnalité étant totalement indépendante de communecter, nous pouvons vraiment prendre notre temps et faire quelque chose de génial qui défiera toutes les lois de l’internet et qui deviendra bien entendu une référence dans la gestion de projets de n’importe quelle entité.

Valeurs

Pour un internet décentralisé et indépendant

Ce qui est bien les outils libres c’est qu’ils peuvent hĂ©bergĂ© par n’importe qui. Mais ça c’est dans la thĂ©orie, parce que dans la pratique, c’est plus compliquĂ© que ça.

Il faut avoir les compétences

Tout le monde ne peut pas hĂ©berger des outils libres parce qu’il faut se former Ă  ça, ça prend du temps et c’est pas forcĂ©ment accessible Ă  tout le monde de prime abord.

Notre projet est alors isolé

Un des gros freins est le fait de se couper des autres. Quand on héberge des outils libres, ces outils libres ne sont pas connectés avec le reste du monde.

Pour illustrer ça je vais prendre l’exemple de loomio :

  • Sur loomio il y a une fonction de recherche des groupes publiques. Cette fonction permet de trouver des projets intĂ©ressants dans lesquels on va potentiellement pouvoir contribuer.
  • La personne qui a son instance de loomio sur son serveur ne sera pas connectĂ© avec le serveur principal de loomio, donc invisible pour les personnes recherchant un groupe dans loomio.

A MOINS QUE

On puisse connecter le serveur de la personne avec un autre serveur qui serait lĂ  avant tout pour centraliser l’information.

Ce qui nous permet d’avoir plusieurs serveurs qui communiquent entre eux, sans avoir un serveur maĂ®tre.

Voici une image qui illustre bien mes propos

POURQUOI ?

Cela permet plusieurs choses.

Pour la personne qui s’auto-hĂ©berge

Elle ne dĂ©pend pas d’une tierce organisation, elle est donc indĂ©pendante. Le rapport de domination entre l’organisation qui a dĂ©veloppĂ© l’outil et la personne n’existe pas. En plus de cela elle est libre de pouvoir filtrer les donnĂ©es qu’elle souhaite, utiliser les protocoles qu’elle a envie, etc… Libre et indĂ©pendante, c’est tout de mĂŞme sympa :D

Pour les sites avec un gros besoin d’hĂ©bergement (type communecter)

Si de plus en plus de personnes s’auto-hĂ©bergent ou si de plus en plus d’hĂ©bergeurs indĂ©pendants Ă©mergent (du type CHATONS ), alors ça fait moins de charge pour les sites avec un gros besoin d’hĂ©bergement qui n’ont alors plus besoin de gĂ©rer trop de serveur et peuvent se focaliser sur le dĂ©veloppement de leur logiciel.

De plus une communautĂ© très active dĂ©fend ardemment ces nouvelles formes d’hĂ©bergements, si communecter rentre dans cette communautĂ©, cela veut dire potentiellement :

  • Plus de contributeurs
  • Plus de communication autour du site
  • Une plus grande communautĂ©

En donnant la possibilitĂ© Ă  sa communautĂ© de s’auto-hĂ©berger, un site comme communecter pourrait faire des Ă©conomies, mais aussi renforcer les liens de toutes les personnes qui gravitent autour de la ressource.

Les liens entre les entités renforcent les projets de tou-te-s

Des liens se crĂ©ent au fur et Ă  mesure que les projets avancent, Ă©voluent, mutent, fusionnent, etc… De cette mise en lien nĂ© plus de possibilitĂ©, plus d’idĂ©es et d’actions pour constamment amĂ©liorer les ressources d’un projet. Si mettre en lien les gens est si puissant, il faut crĂ©er des mĂ©thodes et des outils pour permettre cela.

Écosystème des outils open source

CrĂ©er un Ă©cosystème rĂ©silients des outils open source avec une bonne interopĂ©rabilitĂ© entre eux, avec la possibilitĂ© de modifier le contenu d’une application avec une autre, permettra de rĂ©ellement concurrencer les gros pontes du marchĂ©. Cela permettra alors de sensibiliser plus de gens Ă  ce type de pratique et donc augmenter la communautĂ© des commoners numĂ©riques. #cerclevertueux

Écosystème des créateurs de lien

CrĂ©er un Ă©cosystème rĂ©silients des crĂ©ateurs de lien, avec de la documentation en commun, savoir qui fait quoi, oĂą, comment, qui a besoin de quoi, etc… Permettrait d’ĂŞtre plus performant dans notre manière d’aborder le travail collaboratif et notre manière d’apprĂ©hender notre sociĂ©tĂ©. C’est un moteur considĂ©rable pour l’Ă©volution de notre système vers un autre, plus collaboratif.

Communecter dans tout ça ?

Le but est que communecter s’intègre parfaitement dans les valeurs citĂ©es plus haut et qu’elle devienne la plateforme de rĂ©fĂ©rence pour tous les projets ouverts de notre siècle !

Cahier des charges de la nouvelle fonctionnalité

Les applis ça sert à qui ? Qui peut en créer ?

Toutes les ENTITÉS de communecter, aussi bien une ORGANISATION, qu’un CITOYEN, qu’un PROJET, qu’un LIEU peuvent crĂ©er des applis.

Des applis connectées entre elles

Toutes les applis sont connectées entre elles.

C’est Ă  dire que si par exemple une ORGANISATION crĂ©e une action dans un des ses PROJET dans l’application wekan et qu’elle prĂ©cise que ce PROJET se passe dans un LIEU gĂ©rĂ©e par des CITOYENS. Alors on pourra accĂ©der Ă  l’action de par le wekan de toutes les ENTITÉS citĂ©es.

Cela veut aussi dire qu’on peut ajouter/enlever du contenu dans une appli alors qu’on est dans une autre (comme par exemple le lien entre trello et slack).

Ce type de feature doit être déterminé en fonction de nos besoins et listés pour faire des demandes aux développeurs de chaque appli

Comment accéder à une appli, comment naviguer entre elles ?

Une gestion des applis Ă  la Google

L’une des choses qu’on peut reprocher Ă  sandstorm c’est d’avoir une barre sur la gauche qui met constamment les outils qu’on utilise. Alors c’est pratique quand tu veux facilement changer d’outils, mais par contre ça t’obstrue toute une partie de l’Ă©cran. Et si tu travailles sur un PC portable, ce n’est pas gĂ©rable.

Google utilise une barre horizontale pour naviguer entre ces applis et gérer des options pour spécifique à chaque appli. Dans certaines applis (par exemple Google doc), nous n’avons pas accès aux autres applis.

Copions les ! Créons une icone “appli” en haut à droite qui liste toutes les applis auxquelles on a accès.

Remarquons que chaque appli (rocketchat, loomio, wekan, mediawiki) a dĂ©jĂ  une barre horizontale qui reste. quand on scroll. Il suffira alors d’ajouter l’icĂ´ne applis.

Si on veut vite passer d’une appli Ă  une autre, alors il suffit que de les laisser dans ses onglets actifs.

Lien de l’appli aussi au sein de l’ENTITE dans communecter

Je pourrais aussi accĂ©der Ă  une appli dans une ENTITÉ quelconque, que ce soit un PROJET, une ORGANISATION, un LIEU, ou un CITOYEN. Elle sera prĂ©sente dans la partie "application" de la page de prĂ©sentation de l’ENTITE.

Lien de toutes les applis auxquelles le CITOYEN est attaché

On pourra aussi accĂ©der Ă  l’appli souhaitĂ©e en allant sur la page "toutes mes applis" dans communecter. Cette page centralise toutes les applis auxquelles le CITOYEN contribue, elles peuvent ĂŞtre classĂ©es de diffĂ©rentes manière :

  • par ENTITÉ : On verrait les applis disponibles pour chaque ENTITES pour lesquelles je contribue.
  • par applis : On verrait les ENTITES disponible en fonction de chaque appli.

Mais ce n’est pas tout, on peut passer d’un projet Ă  l’autre dans l’appli elle-mĂŞme.

Dans chaque appli on a accès à toutes nos ENTITÉS

Quand on est dans une application, on peut facilement passer d’une ENTITÉ Ă  une autre. Par exemple, je suis dans le wekan d’un PROJET quelconque, je peux facilement naviguer dans le wekan pour voir les autres PROJETS auxquels je contribue.

Comment créer une appli au sein de communecter ?

A la création de votre ENTITÉ

Quand vous créez une ENTITÉ, vous pouvez cocher les applis que vous utiliserez pour la gérer.

A n’importe quel moment

En modifiant votre ENTITÉ, vous pouvez facilement cocher de nouvelles applis.

Vous pouvez aussi crĂ©er de nouveaux tableaux dans wekan, channel dans rocketchat, etc…

Comment ça se passe ?

Quand vous crĂ©ez une appli, toutes les personnes faisant partie de l’ENTITE dans laquelle vous l’avez créée, vont recevoir dans leurs notifications la possibilitĂ© d’ĂŞtre ajoutĂ©es Ă  cette nouvelle appli. On demande aux personnes rejoignant l’ENTITE en cours de route si elles veulent ĂŞtre ajoutĂ©es aux applis de cette ENTITÉ.

Quelles sont les particularités pour chaque appli

Wekan

De base dans wekan on a un tableau personnel nommé "Perso". Ce dernier regroupe toutes les actions auxquelles on contribue.

Quand on ouvre une nouvelle instance de wekan, cela crĂ©e un nouveau tableau dans l’application.

Soit cette instance vient d’une ENTITE parente (ORGANISATION ou LIEU par exemple). Dans ce cas cela va ouvrir un tableau dont le nom sera le mĂŞme que le nom de l’ENTITE.

Soit cette instance vient d’une ENTITE enfant (PROJET par exemple). Dans ce cas on va crĂ©er un nouveau dossier dans le wekan du nom de l’ENTITE parente avec dans ce dossier deux tableaux : "General" qui est le tableau qui regroupe toutes les actions de tous les tableaux du dossier, et "NomDeLEntiteEnfant" qui est le tableau de l’ENTITE enfant. Quand on ajoute une action dans le tableau de l’ENTITE enfant, l’action est aussi visible dans le tableau gĂ©nĂ©ral.

Quels liens entre les différentes applis ?

Le plus important est d’avoir de rĂ©els liens entre les diffĂ©rentes applis et de pouvoir interagir facilement les unes avec les autres. Par exemple on pourrait ajouter une action dans un wekan en mettant +add nomdelaction dans le rocket chat. Comme ça tout le monde est au courant de l’ajout qui a Ă©tĂ© fait et on pourrait faire en sorte que tout le monde puisse aussi s’ajouter Ă  cette action en cliquant sur le plus qui est mis sur le message.

Lister ici tous les liens qu’on aimerait avoir entre les applis

  • 1
  • 2

Exemple concret

CrĂ©ation d’une ORGANISATION

Je suis nouveau sur la plateforme et je fais partie de l’association Livin’Coop, organisation qui a pour but de crĂ©er du lien entre les diffĂ©rents acteur/ices de la mĂ©tropole. J’ajoute donc les infos nĂ©cessaires pour crĂ©er mon ORGANISATION, Ă  cela j’ajoute que j’aimerais utiliser 4 outils : le wekan, le loomio, le wiki et le rocketchat. J’ai maintenant une ORGANISATION et des outils Ă  disposition pour bien gĂ©rer cette organisation.

Ajout d’un PROJET

Nouvelle décision dans le loomio pour décider de la pertinence du projet

J’aimerais maintenant ajouter un PROJET : "FĂŞte des commoners", le but du projet est de faire un Ă©vĂ©nement qui va rassembler tous les commoners et potentiels commoners de la mĂ©tropole lilloise pour qu’ils Ă©changent sur leurs pratiques et qu’ils contribuent ensemble Ă  l’amĂ©lioration de l’Ă©cosystème des communs. Ça sera aussi l’occasion de communecter tout le monde et de faire des ateliers sur des sujets divers.

Chez Livin’Coop, pour ajouter un PROJET, il faut que tous les CITOYENS concernĂ©es par ce PROJET soit consultĂ©s. Je dois alors crĂ©er une "nouvelle dĂ©cision" dans le loomio de l’ORGANISATION. Pour ce faire, je dois accĂ©der au groupe Loomio de Livin’Coop pour crĂ©er ma "nouvelle dĂ©cision", voilĂ  comment je peux m’y prendre :

  • Je peux cliquer sur l’icĂ´ne en haut Ă  droite des applis, et je choisis loomio. Dans loomio je choisis le groupe "Livin’Coop".
  • Je peux aller dans l’ORGANISATION Livin’coop, puis cliquer sur "loomio" dans la partie application de l’ORGANISATION.
  • Je vais sur ma page "Toutes mes applis" dans communecter et sĂ©lectionne loomio dans l’ORGANISATION "Livin’Coop".

Ajout du PROJET

Tout le monde est d’accord et s’enjaille de cette idĂ©e ! Pour crĂ©er le PROJET, je vais dans l’ORGANISATION "Livin’Coop" et je fais "Ajouter un nouveau projet". Je mets les informations nĂ©cessaires et oh magie, les prĂ©cĂ©dentes applis sont dĂ©jĂ  cochĂ©es. Je veux bien utiliser les mĂŞmes applications pour ce projet. Elles sont donc automatiquement créées de la manière suivante :

  • Wekan : un nouveau tableau est créé, il est le fils du tableau de Livin’Coop, c’est Ă  dire que quand une action est mise dans le tableau de la "FĂŞte des commoners", l’action est aussi mise dans le tableau de Livin’Coop, il est Ă©tiquetĂ© comme "FĂŞte des commoners". Aussi, maintenant quand je vais dans wekan dans "Livin’Coop", deux tableaux s’offrent Ă  moi : "GĂ©nĂ©ral" et "FĂŞte des commoners". "GĂ©nĂ©ral Ă©tant le tableau gĂ©nĂ©ral de l’ORGANISATION Livin’Coop.
  • Loomio : Un sous groupe est créé.
  • Wiki : Une sous-section est créé, c’est Ă  dire aura une URL comme suis : https://wiki.communecter.org/wiki/Livin’Coop/Projet/Fete_des_commoners avec les informations basiques donnĂ©es par le crĂ©ateur du PROJET.
  • RocketChat : Un sous canal est créé portant un nom du type : livincoop_fete.des.commoners_lille.

Ajout d’une action dans un PROJET

Je veux ajouter une action dans le tableau wekan de mon PROJET "FĂŞte des commoners". Cette action consiste Ă  faire une liste de tous les commoners de la mĂ©tropole pour leur parler du projet. Cette action ne concernant directement personne de l’ORGANISATION, je peux directement crĂ©er mon action. Je prĂ©fère tout de mĂŞme laisser un message sur le chat, sur le channel #livincoop_fete.des.commoners pour informer tout le monde ce que je m’apprĂŞte Ă  faire. Ceci Ă©tant fait, je dois donc accĂ©der Ă  mon tableau. A moi s’offre un large panel de choix :

  • Je peux cliquer sur l’icĂ´ne en haut Ă  droite des applis, et je choisis wekan. Dans wekan je choisis "FĂŞte des commoners".
  • Je peux aller dans l’ORGANISATION Livin’coop, puis
    • cliquer sur "wekan dans la partie application de l’ORGANISATION puis je peux choisir le tableau "FĂŞte des commoners".
    • dans le PROJET "FĂŞte des commoners" et cliquer sur "wekan" dans la partie "application".
  • Je vais sur ma page "Toutes mes applis" dans communecter et sĂ©lectionne wekan dans le PROJET "FĂŞte des commoners".

En gros tout est interconnectĂ© donc il est très facile d’accĂ©der Ă  ce que l’on veut. La plupart du temps on utilisera le bouton appli et on choisira l’application que l’on veut. Et on naviguera dans les diffĂ©rentes applis en les laissant dans nos onglets actifs.

Comment mettre en place une telle fonctionnalité

Tel google : nomappli.communecter.org

Chaque appli sera disponible sĂ©parĂ©ment, par exemple il suffira de marquer l’url d’un channel de chat pour pouvoir y accĂ©der.

Login

Un login commun pour toutes les applis sera requis. On pourra se connecter depuis n’importe quelle appli. Le mieux Ă©tant de faire comme facebook/google : se connecter automatiquement.

CrĂ©ation d’une ou plusieurs applis

Quand on crĂ©e une ou plusieurs appli dans communecter, le serveur va automatiquement crĂ©er le groupe si c’est un loomio, le channel si c’est un rocketchat, le tableau si c’est un wekan, l’article si c’est un wiki, etc… Pour ce faire il va utiliser l’API de chacune de ces applications.

Les applis peuvent très bien marcher toute seule.

On peut par exemple utiliser communecter que pour son wekan.

Liens entre les différentes applis

Toutes les applis marcheront en synergie les unes avec les autres via leur API. Elle s’Ă©changeront constamment des donnĂ©es et se mettront Ă  jour automatiquement en fonction des informations qu’elles Ă©changeront.

Voir Ă  long terme

Nous pouvons aussi voir à long terme et voir vers où on veut aller avec cette nouvelle fonctionnalité.

Permettre aux auto-hĂ©bergeurs d’hĂ©berger leur propre communecter

N’importe qui pourrait tĂ©lĂ©charger communecter et les applis qui lui sont associĂ©es pour les installer sur son propre serveur. Son serveur s’il est sur internet pourra interagir avec les autres serveurs communecter (dont le notre) pour Ă©changer toutes les datas nĂ©cessaires. Il aura les mĂŞmes fonctionnalitĂ©s qu’un utilisateur lambda, sauf qu’il l’hĂ©bergera sur un autre serveur.

On pourrait aussi par exemple travailler en local sans avoir besoin d’internet, puis ensuite push ses datas sur un serveur liĂ© Ă  internet.

Regrouper toutes les données de tous les serveurs qui font tourner les applis

Le problème aujourd’hui c’est qu’on ne peut pas avoir une information sur "qu’est ce qui se passe dans ce monde et oĂą est ce que je peux contribuer ?". Et je ne pense pas (enfin je n’espère pas) que le but de communecter c’est de rassembler tout le monde derrière une seule plateforme (la notre + nos serveurs Ă  nous).

On peut effectuer un travail Ă  long terme d’intĂ©gration d’autres serveurs dans la plateforme communecter.

Par exemple, on peut aller voir un serveur wekan et leur dire : "Eh ! C’est sympa ce que vous faites, ce qu’on peut faire pour vous c’est recenser tous vos tableau dans notre plateforme et on peut vous donner la possibilitĂ© d’ajouter des outils Ă  la votre". Ce qui fait qu’ils pourraient sĂ©lectionner les outils dont leur communautĂ© aurait besoin (et donc sĂ»rement communecter parce que c’est de la boulette) et comme ça on Ă©largit notre cercle, sans utiliser aucune ressource et en laissant une communautĂ© lĂ  oĂą elle est. C’est ça aussi la puissance de la dĂ©centralisation et de la crĂ©ation de lien, agrandir sa communautĂ© sans abĂ®mer celle des autres ;) .

On pourrait mĂŞme imaginer des serveurs diffĂ©rents pour chaque appli qui Ă©changeraient entre elles les infos nĂ©cessaires. Le but c’est de trouver la meilleure manière de coder ça pour rendre le tout plus souple. Dans l’idĂ©e je pourrais très bien ĂŞtre sur les serveurs de loomio pour mon appli loomio, les serveur indie.io pour mon wekan, mon serveur perso pour le wiki et le serveur d’un hĂ©bergeur indĂ© pour communecter, et que tout marche ensemble via les APIs !

Bref, j’espère très sincèrement qu’on se dirige par lĂ , parce que je ne veux pas imposer communecter Ă  tou-te-s, je veux juste leur dire, si tu veux c’est disponible et en plus ça marche avec ce que tu fais dĂ©jĂ  !

Questions

Pourquoi utiliser l’API des applications plutĂ´t que les intĂ©grer entièrement Ă  communecter ?

En faisant cela, cela offre une plus grande libertĂ© Ă  l’Ă©cosystème des applis open source. Cela permet

  • de communiquer entre applis mĂŞme si on fait pas partie du mĂŞme serveur ce qui permettra par exemple Ă  plus long terme d’avoir des serveurs dĂ©centralisĂ©s qui communique entre eux.
  • que les applis restent indĂ©pendantes et peuvent continuer Ă  ĂŞtre amĂ©liorĂ©es par leur communautĂ©
  • facilement d’ajouter et de retirer des applications Ă  communecter
  • d’utiliser des applis mĂŞme si ce n’est pas du php
  • crĂ©er des liens avec l’Ă©cosystème des libristes en amĂ©liorant leurs applis
  • pleins d’autres choses auxquelles on ne pense pas maintenant

Et si l’API d’une appli n’est pas assez fournie

Rentrer en contact avec les développeurs et leur faire les yeux doux

Soit ils nous aident et on est content, soit ils ne peuvent pas, ce qui nous amène à :

Se dépatouiller nous même

A ce moment lĂ , on aura plus qu’Ă  forker leur projet et push de nouvelles fonctionnalitĂ©s. Comme ça on amĂ©liore notre projet tout en amĂ©liorant celui des autres. Et on crĂ©e cette Ă©cosystème dont on parlait dans les valeurs.

Loading pushes...

Rendering context...